/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.open.oasis.docs.wsbpel._2._0.process.executable.validation;

import org.eclipse.emf.common.util.EList;

import org.eclipse.emf.ecore.util.FeatureMap;

import org.open.oasis.docs.wsbpel._2._0.process.executable.TAssign;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TCompensate;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TCompensateScope;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TEmpty;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TExit;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TExtensionActivity;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TFlow;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TForEach;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TIf;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TInvoke;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TPick;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TReceive;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TRepeatUntil;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TReply;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TRethrow;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TScope;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TSequence;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TThrow;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TValidate;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TWait;
import org.open.oasis.docs.wsbpel._2._0.process.executable.TWhile;

/**
 * A sample validator interface for {@link org.open.oasis.docs.wsbpel._2._0.process.executable.TSequence}.
 * This doesn't really do anything, and it's not a real EMF artifact.
 * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
 * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
 */
public interface TSequenceValidator {
	boolean validate();

	boolean validateActivity(FeatureMap value);
	boolean validateAssign(EList<TAssign> value);
	boolean validateCompensate(EList<TCompensate> value);
	boolean validateCompensateScope(EList<TCompensateScope> value);
	boolean validateEmpty(EList<TEmpty> value);
	boolean validateExit(EList<TExit> value);
	boolean validateExtensionActivity(EList<TExtensionActivity> value);
	boolean validateFlow(EList<TFlow> value);
	boolean validateForEach(EList<TForEach> value);
	boolean validateIf(EList<TIf> value);
	boolean validateInvoke(EList<TInvoke> value);
	boolean validatePick(EList<TPick> value);
	boolean validateReceive(EList<TReceive> value);
	boolean validateRepeatUntil(EList<TRepeatUntil> value);
	boolean validateReply(EList<TReply> value);
	boolean validateRethrow(EList<TRethrow> value);
	boolean validateScope(EList<TScope> value);
	boolean validateSequence(EList<TSequence> value);
	boolean validateThrow(EList<TThrow> value);
	boolean validateValidate(EList<TValidate> value);
	boolean validateWait(EList<TWait> value);
	boolean validateWhile(EList<TWhile> value);
}
